The extension maintains individual array pointers and associated data for an array of elements: vertexes, normals, colors, color indexes, texture coordinates, and edge flags. The data associated with each array specify the following:
the data type of the values in the array
the number of values per element in the array (for example, vertexes of 2, 3, or 4 coordinates)
the byte stride from one array element to the next
the number of elements (counting from the first) that are static
Static elements may be modified by the application, but once they are modified, the application must explicitly respecify the array before using it for rendering.
When you specify an array, the pointer and associated data are saved as client-side state, and static elements may be cached. You define an element as static, that is, guaranteed not to change, using the count argument to glVertexPointerEXT(). Non-static (dynamic) elements are never accessed until a call to glArrayElementEXT() or glDrawArraysEXT().